Java借助百度云人脸识别实现人脸注册、登录功能的完整示例

您所在的位置:网站首页 百度云 登录 Java借助百度云人脸识别实现人脸注册、登录功能的完整示例

Java借助百度云人脸识别实现人脸注册、登录功能的完整示例

2024-06-13 01:49| 来源: 网络整理| 查看: 265

人脸登录 人脸注册

{{ tips }}

import { login, register } from '@/api/face'

export default { name: 'Index', data() { return { tips: '', mediaStreamTrack: null } }, methods: { /** * 打开摄像头 */ openMedia(tag) { const that = this that.tips = '正在打开摄像头' const constraints = { video: { width: 500, height: 500 }, audio: false } // 获得video摄像头区域 const video = document.getElementById('video') /** * H5新媒体接口:navigator.mediaDevices.getUserMedia() * 1.提示用户是否允许媒体输入,(媒体输入主要包括相机,视频采集设备,屏幕共享服务,麦克风,A/D转换器等) * 2.返回一个Promise对象 * 3.如果用户同意使用权限,则会将MediaStream对象作为resolve()的参数传给then() * 4.如果用户拒绝使用权限,或者请求的媒体资源不可用,则会将 PermissionDeniedError 作为 reject()的参数传给catch() */ const promise = navigator.mediaDevices.getUserMedia(constraints) promise.then((mediaStream) => { thadiaStreamTrack = typeof mediaStream.stop === 'function' ? mediaStream : mediaStream.getTracks()[0] video.srcObject = mediaStream video.play() that.tips = '请正视摄像头' setTimeout(() => that.photograph(tag), 2000) }).catch(error => { console.log(error) }) },

/** * 关闭摄像头 */ closeMedia() { if (this.mediaStreamTrack) { this.mediaStreamTrack.stop() this.openOrCloseVideo(true) this.tips = '操作成功' } },

/** * 视频框是否隐藏 * @param val */ openOrCloseVideo(val) { if (val) { document.getElementById('video').style.display = 'none' } else { document.getElementById('video').style.display = 'block' } },

/** * 登录事件 */ login() { this.openOrCloseVideo(false) this.openMedia(1) },

/** * 注册事件 */ register() { this.openOrCloseVideo(false) this.openMedia(2) },

/** * 拍照进行注册、登录 */ photograph(tag) { // 获得Canvas对象 const video = document.getElementById('video') const canvas = document.getElementById('canvas') const ctx = canvas.getContext('2d') ctx.drawImage(video, 0, 0, 500, 500) // 从画布上获取照片数据 const img = document.getElementById('canvas').toDataURL() this.tips = '正在识别' const data = { 'imagebast64': img } if (tag === 1) { login(data).then(res => { console.log('进行登录') console.log(res) }).finally(() => this.closeMedia()) } else if (tag === 2) { console.log('进行注册') register(data).then(res => { console.log(res) }).finally(() => this.closeMedia()) } }

}}



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3